查看原文
其他

不用费劲装 IDE 了!GitHub + VS Code 推出云端编程新利器

CSDN App CSDN 2020-10-29

作者 | 马超、伍杏玲
出品 | CSDN(ID:CSDNnews)

受疫情的影响,全球最大的开源社区 GitHub 今年采用线上形式举办其技术峰会 Satellite 2020。每年的 Satellite 是一次技术界的盛会,今年尤其盛势空前,GitHub 一口气发布了四款新品:Codespaces、GitHub Discussions、Code&secret scanning 以及 GitHub Private Instances。

其中 Codespaces(代码空间)引起开发者广泛的关注,堪称是程序员的神器,Codespaces 为开发者提供基于云端托管的完整开发环境,其功能强大,可在 GitHub 中秒开,用户十分便捷地为项目写代码。

笔者个人认为这是 GitHub 继去年底推出手机 App 后的一次重大迭代。手机版的 GitHub 略侧重于社交,这款在线编程 IDE 则是让 GitHub 回归到代码本身,提高开发效率。


VS Code Online + GitHub 强强联合,
敲代码更方便了!


Codespaces 是基于VS Code 打造的,那为何在微软收购 GitHub 后,还需打造这款在线编程 IDE?

据 GitHub 官网介绍,有时候开发者向社区贡献代码,可能是一件很困难的事。因为每个代码存储库都有自己不同的配置开发环境的方式,开发者在写代码前,通常需要数十个步骤来配置。更糟的是,有时开发者正在跟进的两个项目环境还冲突了。

基于此,Codespaces 应运而生。Visual Studio 提供技术支持,Codespaces 集成浏览器版 VS Code 编辑器,支持代码补全、导航、扩展、终端访问等功能。如果开发者更喜欢使用桌面版的 IDE,可在 GitHub 中启动 Codespaces 并从桌面连接它。 

Codespaces 具有以下特性:

1、即时开发环境:在 GitHub 下,Codespaces 让你拥有完整的 Visual Studio Code 体验。

2、在浏览器页面中使用完整的开发环境来构建、测试、调试和部署代码。

3、简化工作流程,可以自动设置依赖关系和 SSH 密钥,开发者可更快地在任何项目上提交代码了。

4、支持扩展和自定义:使用 dotfiles 和 VS Code 扩展名来配置编辑器,在每个代码空间创建一致的环境。

目前 Codespaces还处于内测阶段,小伙伴可以去试试申请:github.com/features/codespaces

如今 Beta 版 Codespaces 是免费的,后续 GitHub 将计划提供简单的即付即用的收费模式。

看来有了这款神器,程序员小伙伴们敲代码更方便了!


Cloud IDE 大比拼


我们知道目前很多云服务商,在实践 DevOps 能力的过程中,云服务的客户往往会把需求、代码、构建、测试、发布、部署、运维、运营等工作全部从本地转移到云端,享受云服务带来的移动性和便利性。但是一直缺乏有效的上云方式,导致开发人员手中没有良好的工具,无法真正实现 DevOps 运维开发一体化的理念,因此一款云上 Coding 的开发工具,也是很多云服务商的必备神器。

业界主流的IDE工具无非几种,Eclipse、Visual Studio、IntelliJ,今天这几款也依然是桌面开发者的首选。具备 Web 端能力的工具,大概有以下几款:

一、Eclipse Che

Eclipse Che 是一个现代的、开放源代码的软件开发环境。它是一个通过提供结构化的工作区、项目输入、模块化扩展插件来支持 Codenvy 的引擎。Che 可以用作桌面 IDE,RESTful 工作空间服务器,或作为一个创建新的工具 SDK,支持一个有标签的 Docker images 启动一个默认 Eclipse Che。实际使用来说的话,Eclipse Che 对于 Java 更加友好,但是对于 Python、Rust 等语言功能支持不够强大,因此没有形成主流。

二、Theia

Theia 的界面有如熟悉的 VS Code,操作体验流畅自然,插件体系成熟稳定。

由于 Theia 的操作界面与 VS Code 非常接近,操作体验基本一致,有不少人都会误认为这就是 VS Code 的线上版本。

对于开发者而言,不需要重新学习一个新的开发工具,难道不是一件好事?Theia 从设计初期就充分考虑了桌面和云的不同特点,支持容器部署和虚拟机部署,浏览器访问。Theia 内核非常精简,只需要很低配置就可以运行起来。对于VS Code 插件扩展体系的直接支持尤其吸引人。众所周知 VS Code 的插件市场是业界最大的生态系统,从语言支持、业务对接、平台支持等诸多方面都给最终用户带来定制化能力。Theia 兼容 VS Code 插件扩展标准,好处不言自明。这也就说明了为什么诸多云厂商都采用 Theia 方案,来进行自己的云 IDE 研发。

三、VS Code

VS Code是微软在2015年正式宣布推出的产品,是一款能跨 Mac OS X、Windows 和 Linux 运行的开发工具,针对于编写现代 Web 和云应用的跨平台源代码编辑器。

VS Code 一经推出就抢占了各种 C 位,因为微软雄厚的 IDE 工具方面的技术储备,VS Code 对各种语言支持的程度均非常好,使用灵活方便。

这种新出现的 Web IDE 把本地开发工作搬到了云端,开发者可以在云端保存自己的开发环境,编写代码,运行和调试应用,甚至我们还可以对接云服务,提供类似代码检查这样的集成化场景能力。


新增 Github Discussions、代码扫描神器,

GitHub 更丰富了


  • GitHub Discussions

开发者在社区不只是一起编写代码,还一起讨论项目的功能等。但到目前为止, GitHub 只提供问题和拉取请求作为开发者之间的“对话”模式。但是问题和请求请求都是线性模式,适合于合并代码,但不适用于创建社区知识库。让开发者有专门的交流地方,这是 GitHub Discussions 的研发初衷。

GitHub Discussions 存在开发者的项目资源库中,使用线程格式来启动,开发者可以很快地响应和组织非结构化对话。并可将问题标记为已回答,如此一来,将丰富社区的知识库,还可用来维护常见问题解答和协作其他文档。

GitHub 表示“我们认识到社区讨论和编码一样是开发的一部分,因此讨论贡献也出现在用户的贡献图中。” 

  • Code scanning 和 Secret scanning
去年,GitHub 收购代码分析平台公司 Semmle,如今 GitHub 越来越重视代码安全,在工作流程中引入了代码安全性,使 GitHub 成为 CVE 编号颁发机构,并推出了 GitHub Advanced Security 产品。
1、启用 Code scanning 后,将对每个“git push”进行扫描来查找潜在安全漏洞,并将结果直接显示在开发者的 PR 上。Code scanning 使用语义分析引擎 CodeQL 来发现漏洞。
GitHub 将免费提供开源代码扫描功能。

2、Secret scanning 如今可用于私有存储库。自 2018 年以来,此功能已在公共存储库中可用。GitHub 已与 AWS、Azure、Google Cloud、npm、Stripe 和 Twilio 等企业扩大使用范围。用户已识别出超过一千万个潜在机密,因此要求对自己的私人代码具有相同的功能。如今 Secret scanning 可以监视私有存储库中的已知 secret 格式,在发现问题时立即通知开发人员。 

告诉大家一个好消息:GitHub 向所有公共存储库免费提供代码 Code scanning 和 Secret scanning 功能。 

  • GitHub Private Instances

企业在 GitHub 构建和使用软件,对安全性和合规性的要求较严格。所以 GitHub 针对企业用户,推出全新、完全托管的 GitHub Private Instances 计划。Private Instances 能增强的安全性、合规性和策略,包括自带密钥加密,备份归档以及对区域数据主权要求的合规性。 

Github 对话、代码扫描、在线编程IDE……程序员大本营 GitHub 越来越丰富了,从发布的这些产品我们也能看到,GitHub 不断致力提高开发者的效率,祝福 GitHub 越来越好。

更多信息:https://github.blog/2020-05-06-new-from-satellite-2020-github-codespaces-github-discussions-securing-code-in-private-repositories-and-more/#codespaces

更多精彩推荐

十六位顶尖专家齐聚,解密阿里云最新核心技术竞争力!

华为回应美新规:不涉及产品买卖;微软 GitHub 帐户疑被黑;GCC 10.1 发布 | 极客头条

微服务太杂乱难以管理?一站式服务治理平台来袭!

干货 | 时间序列预测类问题下的建模方案探索实践

利用 Docker 在不同宿主机做 CentOS 系统容器 | 原力计划

从货币历史,看可编程货币的升级

你点的每个“在看”,我都认真当成了喜欢

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存